1. Technical Field
The present invention relates generally to a scenario-based load testing apparatus and method and, more particularly, to a scenario-based load testing apparatus and method that create a virtual user based on a scenario and test the load of a game, thereby being able to verify the logic of a complicated game, reducing the time it takes to conduct a load test, and also increasing the efficiency of a test.
2. Description of the Related Art
In the software testing field in which the stability and performance of server applications for multiple users are automatically tested, the operation of creating a specific load, applying the load to a server, and then testing the stability of the server falls within the load test field from the viewpoint of software engineering, and also falls within the stress test field in which abnormal phenomena that occur on a server in a high-load state are observed. Meanwhile, the operation of analyzing the stability of a game server and a game by analyzing the logic of the game falls within the game quality assurance field.
In such fields, load generation systems using virtual users, which are capable of generating a large number of virtual users to conduct load tests, have been researched. Furthermore, in order to test the stability of a server in a network environment similar to an actual one, research into the addition of a structure for creating a virtual network circuit to a simulation environment has been carried out.
The conventional load generation systems using virtual users include systems that use captured packets without change, or systems that regenerate a load for each action by applying very simple manipulation to captured packets. The conventional load generation systems using virtual users focus on easy conducting of simple load and stress tests. That is, the conventional load generation systems use the method of capturing a specific packet sample of an actual client, performing appropriate manipulation on the packet sample, and sending a large amount of data to a server. Here, due to the characteristics of on-line games, simple packet manipulation is carried out for the cases where different information, such as a different ID, password and session key value, should be used for each session. That is, a great number of packets can be created in a simple, repetitive manner by manipulating a specific item found in a list of previously captured packets, thereby being able to apply different content to each session.
Since the above conventional load generation systems are capable of conducting merely very simple load tests, the utility of the tests is poor. In particular, an on-line game server employs complicated game logic compared to general server applications such as web services, and therefore there arises a problem in that it is difficult to test the stability of complicated logic using only the conventional systems.